Imports BusinessLayer
Imports EntityLayer

Partial Class ListaSolicitudRequerimiento
    Inherits System.Web.UI.Page

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        If Not Page.IsPostBack Then
            Call ListarSolicitudes()
        End If
    End Sub

    Protected Sub btnNuevo_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs)
        Response.Redirect("SolicitudRequerimiento.aspx")
    End Sub

    Private Sub ListarSolicitudes()
        dgDatos.DataSource = SolicitudRequerimientoBL.ListarTodo
        dgDatos.DataBind()
    End Sub

    Protected Sub dgDatos_RowCommand(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewCommandEventArgs)
        Dim index As Integer = Integer.Parse(e.CommandArgument.ToString())
        Dim row As GridViewRow = dgDatos.Rows(index)
        Dim key As DataKey = dgDatos.DataKeys(row.RowIndex)

        Try
            If e.CommandName = "Prod" Then
                MostrarProductos((key(0).ToString()))
            End If
            If e.CommandName = "Edt" Then
                EditarSolicitud((key(0).ToString()))
            End If
            If e.CommandName = "Del" Then
                Dim estado = row.Cells(5).Text
                If (estado = "Aprobado") Then
                    ScriptManager.RegisterStartupScript(Me.PanelMantenimiento, Me.GetType, "Script", MessageBox("No se puede eliminar una Solicitud de Requerimiento Aprobada"), True)
                Else
                    EliminarSolicitud((key(0).ToString()))
                End If
           End If
        Catch ex As Exception

        End Try
    End Sub

    Private Sub MostrarProductos(ByVal strCodigo As String)
        lblProducto.Text = "Productos de la Solicitud de Requerimiento " & strCodigo
        dgListaProducto.DataSource = SolicitudRequerimientoProductoBL.ListarxCodigo(strCodigo)
        dgListaProducto.DataBind()
    End Sub

    Private Sub EliminarSolicitud(ByVal strCodigo As String)
        SolicitudRequerimientoBL.Eliminar(strCodigo)
        dgDatos.DataSource = SolicitudRequerimientoBL.ListarTodo
        dgDatos.DataBind()
        lblProducto.Text = ""
        dgListaProducto.DataSource = Nothing
        dgListaProducto.DataBind()
    End Sub

    Private Sub EditarSolicitud(ByVal strCodigo As String)
        Response.Redirect("SolicitudRequerimiento.aspx?strCodigo=" & strCodigo)
    End Sub

    Private Function MessageBox(ByVal var_mensaje As String) As String
        Return "window.alert('" + var_mensaje + "');"
    End Function

End Class
